home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
APC & TCP 4
/
APC & TCP 4.iso
/
games
/
publicdomain
/
a
/
agility
/
readme.agility
< prev
next >
Wrap
Text File
|
1996-10-23
|
9KB
|
198 lines
=================================================
AGILITY: THE (MOSTLY) UNIVERSAL AGT INTERPRETER
Version 0.3 (beta)
=================================================
This is an interpreter for game files created with Malmberg and
Welch's _Adventure Game Toolkit_. AGiliTy is universal in the sense
that it understands and interprets most of the many versions of the
AGT game file format (unlike the original interpreters which were
only intended to run the game file format associated with them) and
also in that it is written in ANSI C and so should be straightforward
to port to other systems.
It is *not* a port of the original interpreters but rather a
completely new interpreter built around the game file format; while it
follows the original interpreters on most things, there are some
differences which are described below.
This software is copyright 1996 by Robert Masenten but may be
freely distributed and used for non-commercial purposes so long as
this file (and hence this copyright notice) is included
unaltered. Since this is a beta version, I ask that this not be placed
on FTP sites or BBSs other than the Interactive Fiction archive at
ftp.gmd.de and its mirrors.
Since this is free software, it has NO WARRANTY of any kind.
For information on compiling and porting this program, see the file
'agility.doc'. A list of known bugs is in the file 'buglist' and a
list of changes from earlier versions is in 'changes.txt'. (If this is
with a binary and not the source version, some of these files may not
be present).
Send comments and bug reports to Robert Masenten at:
masenten@math.upenn.edu.
-----------------
ACKNOWLEDGMENTS
-----------------
Thanks to the following people:
*David Kinder (responsible for the Amiga port and a source of much
valuble feedback)
*Jay Goemmer (who has contributed several ideas for improvements)
*Robert Pelak (who suggested the name "AGiliTy")
*All of the other people on rai-f who suggested names for my interpreter.
-----------------------
AGT VERSIONS SUPPORTED
-----------------------
AGiliTy is known to understand the following versions of AGT (which
include almost every AGT game at ftp.gmd.de):
--1.18
--the early 'Classic AGT': e.g. 1.19, 1.2, 1.21
--"Classic AGT", both big and small: e.g. 1.3, 1.32, 1.35, 1.5, 1.7
--the "Even Bigger 1.32" used by _Cosmoserve_
--the "Chemically Altered 1.32" used by _Shades of Gray_,
--Menichelli's 1.82 and 1.83 (only minimally tested)
--Both known "pre-Master's" 1.5 variants
--The "Master's Edition", versions 1.0, 1.55, and 1.56/1.6.
AGiliTy can't currently read version 1.0 games as these use an earlier
form of the opcode encoding scheme that I haven't finished
deciphering. AFAIK the only game on ftp.gmd.de affected by this is _The
Spatent Obstruction_.
_Klaustrophobia_ is technically supported but is written in multiple
chapters; while AGiliTy can be used to play the first chapter, the
game depends on DOS programs to switch between chapters (apparently by
doing some magic with save files).
_The Pyrmaids of Mars_ and _Cliff Diver_ require configuration
options to be set since they use variant interpreters that
are supported but can't be detected by the interpreter.
_Pyramids_ needs the ALT_ANY option to be set and _Cliff Diver_
requires the IRUN option.
-----------------------------------------------------------
DIFFERENCES BETWEEN AGILITY AND THE ORIGINAL INTERPRETERS
-----------------------------------------------------------
--Disambiguation is done on the normal command entry line rather than
having a special prompt.
--LISTEXIT ON, LISTEXIT OFF will turn automatic listing of exits on or
off (in AGT there is a LIST EXITS command, so some AGT games fail to
list exits to a room).
--OOPS, UNDO, and RESTART are supported (at least on systems with
enough memory).
--Adjective-only matches are accepted by the parser.
--Some more multiple word verbs are automatically recognized (for
example, GET IN is automatically translated into ENTER).
--Some built-in verbs have additional synonyms. (In particular,
standard one-letter abbreviations are supported: X for EXAMINE, Z for
WAIT)
--The standard error messages are different than the original (except
in Master's Edition games where most of the standard error messages
are included in the game file)
--SCRIPT output is sent to a file rather than to the printer.
--AGiliTy has an extended AGILDEBUG debugging verb and supports more
detailed metacommand debugging output.
--AGiliTy uses a different save file format.
--COLORS is not supported, although on some systems equivilant
functionality may be supported in the configuration file.
--Graphics, sound, and fonts are not supported (although the remaining
Master's Edition language extensions are).
----------------------
LIST OF SPECIAL VERBS
----------------------
These are all of the special verbs recognized by the interpreter:
SCORE Print out your score.
NOTIFY Turn score notification on and off
BRIEF Don't print room descriptions for rooms you've seen.
VERBOSE Print room descriptions even for rooms you've already seen.
LIST EXITS List the exits from a room.
LISTEXIT ON,OFF Turn on/off automatic listing of exits.
SCRIPT Start sending a transcript to a file.
UNSCRIPT Stop creating a transcript.
LOG Start sending all of your commands to a file.
REPLAY <number> Replay your commands from a file, one every <number>
seconds.
REPLAY STEP Replay your commands from a file, one for every keypress.
AGILDEBUG Access debugging commands.
MENU Toggle menu mode on or off.
OOPS Correct a word you just mistyped; must be the first command on
a line.
UNDO Undo your last move; must be the first command on a line.
SAVE Save the game.
RESTORE Restore the game.
RESTART Restart the game.
QUIT Quit
--------------------
CONFIGURATION FILES
--------------------
The following configuration options are supported on all platforms.
Other options may be supported on your particular system; see any
platform-specific notes for information.
Each option should be on a separate line in the configuration file.
Lines starting with '#' will be treated as comments and ignored.
Options can be negated by prefixing them with 'NO_' so that, for
example, DEBUG would become NO_DEBUG.
General options:
VERBOSE Start the game in VERBOSE mode
DEBUG Allow the use of AGILDEBUG for pre-Master's games
PATH Gives a space-separated search path for AGT games. (not
implemented yet)
TONE Enables the *tone* action token, which allows games to make annoying
beeps on some platforms. The only game I would recommend
enabling this for is _CosmoServe_ which has some interesting
sound effects. Not all platforms support this command.
INPUT_BOLD Makes the input line bold. (This doesn't work on all
platforms yet)
Game specific options
ROOMTITLE Print the room title in bold before the room description
in pre-Master's games. (Master's Edition games do this
automatically)
IRUN Print error messages in first person. This should be set for
_Cliff Diver_.
CONST_TIME Increment time at a constant rate instead of randomly.
SLASH_BOLD If set the slash character toggles bold on and off.
(This is set automatically for 1.8x games)
PRONOUN_SUBS Do $you$-style substitutions even in game-author
defined messages.
ALT_ANY This scans the ANY metacommands *with* the <verb>
metacommands rather than before them. Should be set for
_Pyramids of Mars_.
Technical options: These are fine tuning.
FIX_METAVERB Don't run ANY metacommands when executing a metaverb.
FIX_MULTINOUN Only advance one turn when manipulating multiple nouns,
rather than a turn for each noun.
PURE_ANSWER Require AND-connected answers to be in the right order.
(The ME documentation claims order shouldn't matter, but in
the actual interpreters it does.)
Parse Options: These are all pretty technical.
PURE_DUMMY Allow dummy verbs to be run by typing "dummy_verb3"
PURE_SUBNAME Allow subroutines to be run by typing "subroutine3"
PURE_SYNONYM Treat synonyms exactly as nouns.
ADJ_NOUN Don't pick noun matches over adjective-only matches.